$(function() {
    //1. 表单验证
    //用户名和密码不能为空
    //用户名2-6位
    //密码 6-12位
    //调用表单验证方法
    $('#form').bootstrapValidator({
        //对表单数据进行验证 
        //1. 指定不校验的类型，默认为[':disabled', ':hidden', ':not(:visible)'],可以不设置
        excluded: [':disabled', ':hidden', ':not(:visible)'],

        //2. 字段 对哪些字段进行验证
        fields: {
            username: {
                //验证的规则
                validators: {
                    //非空
                    notEmpty: {
                        message: '用户名不能为空！'
                    },
                    //长度限制
                    stringLength: {
                        min: 2,
                        max: 6,
                        message: '用户名长度2-6位'
                    },
                    //拓展错误的提示消息
                    callback: {
                        message: '用户名不存在！'
                    }
                }
            },
            //密码
            password: {
                //验证规则
                validators: {
                    //非空
                    notEmpty: {
                        message: '密码不能为空！'
                    },
                    //长度限制
                    stringLength: {
                        min: 6,
                        max: 12,
                        message: '密码长度为6-12位'
                    },
                    //拓展密码错误的消息
                    callback: {
                        message: '密码错误！'
                    }
                }
            }
        },

        //3. 指定校验时的图标显示
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        }
    });

    //2. 重置表单全部样式(验证样式)
    // $('#form').data('bootstrapValidator') 获取表单校验的实例
    $('.btn-reset').click(function() {
        $('#form').data('bootstrapValidator').resetForm();
    });

    //3. 表单校验通过后 发送ajax请求进行登录 要阻止表单提交的默认行为
    $('#form').on('success.form.bv', function(e) {
        //阻止默认行为
        e.preventDefault();
        $.ajax({
            //把表单数据发送到后台进行判断
            type: 'post',
            url: "/employee/employeeLogin",
            data: $('#form').serialize(),
            dataType: 'json',
            success: function(info) {
                console.log(info);
                if (info.error) {
                    //失败
                    if (info.error == 1000) {
                        //用户名错误 把用户名校验状态改为校验失败
                        $('#form').data('bootstrapValidator').updateStatus('username', 'INVALID', 'callback');
                    }
                    if (info.error == 1001) {
                        //密码错误 把密码校验状态改为校验失败
                        $('#form').data('bootstrapValidator').updayeStatus('password', 'INVALID', 'callback');
                    }
                } else {
                    //成功
                    //跳转到首页
                    location.href = './index.html';
                }
            }
        });
    });
});